  // 商品支付页面，从购物车页面复制修改得到

  // =引入封装的三个函数+解决报错的包
  import {getSetting,chooseAddress,openSetting,showModal,showToast} from "../../utils/asyncWx.js";
  import regeneratorRuntime from '../../lib/runtime/runtime';

Page({


  /**
   * 页面的初始数据
   */
  data: {
    //===页面载入时，显示获取地址还是地址信息-存储缓存数据的变量
    address:{},
    // ====缓存中的商品信息，存到App中
    cart:[],
    // ====总价格、总数量，在标签需要显示的
    totalPrice:0,
    totalNum:0

  },

  onShow(){
    // =页面载入时，显示获取地址还是地址信息
    // ====获取缓存信息，将其拿给程序内存.注意这里用let 不能用const
    // ====let定义的变量值可以更改；const定义的变量后续值无法更改
    let address = wx.getStorageSync("address");
    // ==== address 为空时，无法新增属性，会报错，这里增加一个判断，解决报错问题
    if (Object.keys(address).length !== 0) {
       address.all = address.provinceName+address.cityName+address.countryName+address.detailInfo;
      };
    this.setData({
      address
    });
    // = 购物车内商品信息渲染
    // ==== 获取缓存中的购物车数据,缓存为空时，指定数据格式
    let cart =wx.getStorageSync("cart")||[];
    // ==== 过滤选中的商品进行渲染
    cart = cart.filter(v=>v.checked);
    // ===需要更新的状态：全选、总价、商品总数
    let totalPrice=0;
    let totalNum=0;
    cart.forEach(v => {
        totalPrice+=v.num*v.goods_price;
        totalNum+=v.num;
    });

    this.setData({
      cart,
      totalNum,
      totalPrice
    });
  }



})